package dletc.set;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

import dletc.Test.Student;
/**
四、Set集合

 4.1 Set集合的特点：
        1. 无序的，存入的顺序与取出的不一致[不是随机的无序]
                          恰巧会碰到他存储的顺序与你存储的顺序是一致的；
        2. 不可有重复数据
        3. set使用的都是Collection集合的方法
        4.在set集合中两个对象判断是否相等的条件：A equals方法重写	B hasCode方法也需要重写。
        5.LinkedHasSet集合
        		5.1  是HashSet的子类
        		5.2 特点：底层是一个哈希表（数组 + 链表） + 链表 （可以用来记录元素的存储顺序）
        				不可以重复的，但有序的（怎么进去怎么出来，不是排序）。
        		5.3 应用场景：如果数据即想有序又想去重复，可以采用。
*/
public class Demo01 {

	public static void main(String[] args) {
		
		Set set = new HashSet<>(); 
		
		set.add("abc");
		set.add(123);
		set.add(true);
		set.add(new Student());
		set.add(3.0);
		set.add("abc");
		
		System.out.println(set);
		//遍历集合
		Iterator it = set.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
		System.out.println("----------------------");
		for (Object object : set) {
			System.out.println(object);
		}
	}

}
